#include <stdio.h>
#include "main.h"
#include "miejscowki.h"
#include "rezerwacje.h"

void menu(int lot_id) {
	printf("Numer lotu: %d\n", lot_id);
	printf("a) Pokaz liczbe pustych miejsc\n");
	printf("b) Pokaz liste pustych miejsc\n");
	printf("c) Pokaz alfabetyczna liste miejsc\n");
	printf("d) Zarezerwuj miejsce dla klienta\n");
	printf("e) Usun rezerwacje klienta\n");
	printf("f) Potwierdz rezerwacje klienta\n");
	printf("g) Powrot do poprzedniego menu\n");
	printf("Wybor: ");
}
void menu_loty(void) {
	printf("Wybierz lot:\n");
	printf("a) godz. 7:00\tb)godz. 9:00\n");
	printf("c) godz. 12:00\td)godz. 16:00\n");
	printf("e) Koniec\n");
	printf("Wybor: ");
}
void clear_str(char *ch) {
	while(*ch) {
		if(*ch == '\n')
			*ch = '\0';
		ch++;
	}
}
void wybierz_lot(ODLOTY *rejs) {
	char opcja;
	void (*func[6])() = {pokaz_ile_wolnych, pokaz_wolne, pokaz_rezerwacje, rezerwuj, kasuj, potwierdz};

	menu(rejs->nr_lotu);
	while((opcja = getchar()) != 'g') {
		while(getchar() != '\n')
			continue;
		switch(opcja) {
			case 'a' : run(func[0], rejs); break;
			case 'b' : run(func[1], rejs); break;
			case 'c' : run(func[2], rejs); break;
			case 'd' : run(func[3], rejs); break;
			case 'e' : run(func[4], rejs); break;
			case 'f' : run(func[5], rejs); break;
		}
		menu(rejs->nr_lotu);
	}
}
void run(void (*fp)(ODLOTY *), ODLOTY *rejs) {
	(*fp)(rejs);
}
